package com.designpattern.behavior.state;

/**
 * @author Administration
 * @date 2021/10/22 - 10:40 - 星期五
 * @project 行为型模式中的状态模式   具体状态（Concrete  State）角色
 * @package com.designpattern.behavior.state
 * @by 晨
 */
//开启状态
public class OpenningState extends LiftState{


    @Override
    public void open() {
        System.out.println("电梯门开启...");
    }

    @Override
    public void close() {
        //状态修改
        super.context.setLiftState(Context.CLOSING_STATE);
        //动作委托为CloseState来执行，也就是委托给了ClosingState子类执行这个动作
        super.context.getLiftState().close();
    }

    //电梯门不能开着就跑，这里什么也不做
    @Override
    public void run() {

    }

    //开门状态已经是停止的了
    @Override
    public void stop() {

    }
}
